import tornado.web
import tornado.websocket
from util.db import db
from util.redis import r
import json,time
conndict = {}
userlist = []
class Websockkk(tornado.websocket.WebSocketHandler):
    # 跨域支持
    def check_origin(self, origin):
        return True
    # 建立连接
    def open(self):
        # 获取参数
        id = str(self.get_query_argument('id'))
        name = str(self.get_query_argument('name'))
        # 存储连接
        conndict[id] = self
        #判断是否为用户，如果为用户加入userlist
        index = id.find('kefu')
        if index>=0:
            # 如果为客服返回userlist
            self.write_message({'code':200,'userlist':userlist,'mes':{}})
        else:
            # 判断是否为客服
            userlist.append({'id':id,'name':name})
        print(userlist)
        print(conndict)
        #判断是否为客服
        # self.write_message(json.dumps(userlist))
    #接收消息
    def on_message(self,mes):
        mes = json.loads(mes)
        id = str(mes['id'])
        mes = mes['mes']
        # 如果客服给用户发判断用户是否在线 如果不在线将消息存入redis key用户id+levelmes，value:[]
        if id in conndict:
            conndict[id].write_message({'code': 200, 'mes': mes, 'userlist': userlist})
    def on_close(self):
        pass



class TTkk(tornado.web.RequestHandler):
    def get(self):
        msg = self.get_query_argument('mes')
        id = int(self.get_query_argument('id'))
        conndict[id].write_message(msg)